package com.glq1218.role.dto;

import com.glq1218.domain.RolePermission;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.List;

/**
 * @author glq1218
 * @description 权限数据传输对象
 * @since 2023/4/11 14:00
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class RoleDTO {
    /**
     * 角色ID
     */
    @Schema(description = "角色ID")
    private Long id;
    /**
     * 角色名称
     */
    @Schema(description = "角色名称")
    private String name;
    /**
     * 角色描述
     */
    @Schema(description = "角色描述")
    private String description;
    /**
     * 状态，0-正常，1-禁用
     */
    @Schema(description = "状态，0-正常，1-禁用")
    private Byte status;
    /**
     * 创建时间
     */
    @Schema(description = "创建时间")
    private LocalDateTime createdAt;
    /**
     * 更新时间
     */
    @Schema(description = "更新时间")
    private LocalDateTime updatedAt;

    /**
     * 角色拥有的权限列表
     */
    @Schema(description = "角色拥有的权限列表")
    private List<RolePermission> permissionList;
}
